home *** CD-ROM | disk | FTP | other *** search
/ Aminet 6 / Aminet 6 - June 1995.iso / Aminet / util / shell / tlist006.lha / tlist.doc < prev   
Encoding:
Text File  |  1995-04-05  |  7.6 KB  |  278 lines

  1. TurboList v0.06 alpha (5-Apr-95)
  2. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  3. by Conrad Sanderson (email: g.sanderson@ais.gu.edu.au)
  4. Mail me with bug reports or suggestions...
  5.  
  6.  
  7. TABLE OF CONTENTS
  8. ~~~~~~~~~~~~~~~~~
  9. What is this thing?
  10. What else does it do?
  11. Why is it faster?
  12. It's still experimental
  13. OPTIONS
  14. ALIASING
  15. HISTORY
  16. TO DO
  17.  
  18.  
  19. What is this thing?
  20. ~~~~~~~~~~~~~~~~~~~
  21. TurboList is a command similar to the standard list command supplied
  22. with Workbench.  It requires at least Kickstart 2.0 (v37.175).
  23.  
  24. Instead of listing directories like this:
  25.  
  26. muiv23test.LZX            116529 ----rwed Today     17:36:34
  27. ami2vga.iff                19288 ----rw-d Today     17:29:03
  28. ftphunt.gz                 13768 ----rwed 04-Jan-95 14:27:41
  29. strputsize.c               empty ----rw-d Saturday  23:57:09
  30. ultoa020.o                   444 ----rwed 28-Mar-95 19:11:11
  31. ultoa020.c                   331 ----rw-d 28-Mar-95 19:08:43
  32. desert.rat.toxic.article.gz    3684 ----rwed Today     17:24:34
  33. etherpeek                   2369 ----rwed 04-Jan-95 22:21:34
  34. electric.bulle              1416 ----rwed 04-Jan-95 22:16:54
  35. 9 files - 168 blocks used
  36.  
  37.  
  38. it lists them like this:
  39.  
  40. muiv23test.LZX                  114K 17:36:34  ----rwed
  41. ami2vga.iff                      19K 17:29:03  ----rw-d
  42. ftphunt.gz                       13K 04-Jan-95 ----rwed
  43. strputsize.c                      0b Saturday  ----rw-d
  44. ultoa020.o                      444b 28-Mar-95 ----rwed
  45. ultoa020.c                      331b 28-Mar-95 ----rw-d
  46. desert.rat.toxic.article.gz     3.6K 17:24:34  ----rwed
  47. etherpeek                       2.3K 04-Jan-95 ----rwed
  48. electric.bulle                  1.4K 04-Jan-95 ----rwed
  49. TOTAL: 9 files [154K] and 0 dirs 
  50.        [168K used, 10.5M free]
  51.  
  52. Explanation:
  53.  
  54. K = 1024 bytes  (1 Kilobyte)
  55. M = 1024K       (1 Megabyte)
  56. G = 1024M       (1 Gigabyte)
  57.  
  58. hence, 116529 bytes = 116529/1024 = 113.79K, or approximately 114K.
  59.  
  60. In the TOTAL: lines,
  61.  
  62. [154K]          is all of the file sizes added together.
  63.  
  64. [168K used]     represents the _actual_ amount of disk space used
  65.                 by the _listed_ files and directory entries.
  66.                 If some files/dirs are hidden, they are not taken
  67.                 into account.
  68.  
  69. [10.5M free]    is the amount of space free on the device
  70.  
  71.  
  72. NOTE: If any of the above values exceed 4 Gigabytes, strange/incorrect
  73.       results will be printed... but not many people have 4 Gigabyte
  74.       drives.
  75.  
  76.  
  77. What else does it do?
  78. ~~~~~~~~~~~~~~~~~~~~~
  79.  - Can be upto 25% faster than normal list command
  80.  - Long filenames fit without stuffing up the display
  81.  - Approximates the file size so it can be read easily (can be turned off)
  82.  
  83.  - Displays the time of the files only if they were created today,
  84.    otherwise it prints out the day or the date.  This will be changed
  85.    to use a format similar to UNIX in a later version
  86.  
  87.  - doesn't display hidden files (with the h bit) (can be turned off)
  88.  - handles patterns (ie. stuff like foobar.#? etc)
  89.  
  90.  
  91. Why is it faster?
  92. ~~~~~~~~~~~~~~~~~
  93.  - Turns off the cursor while printing (can be forced to remain on)
  94.  - Direct writes (can be forced to use normal printing methods)
  95.  
  96.  - Caches 3 filenames before printing them (can be turned off)
  97.    (note: caching filenames may not be desirable when using pattern
  98.     matching on a slow drive... will be fixed later)
  99.  
  100.  
  101. It's still experimental
  102. ~~~~~~~~~~~~~~~~~~~~~~~
  103.  - don't expect everything working perfectly
  104.  
  105.  - a lot of functions are missing when compared to the normal list command
  106.    eg. recursive directories, listing according to dates (since/upto), etc...
  107.  
  108.  
  109. OPTIONS
  110. ~~~~~~~
  111. The letters after / specify the type of argument
  112.  
  113. /M = multiple strings    (keyword doesn't have to be present)
  114. /S = switch (ie. enable) (keyword has to be present)
  115.  
  116. If a keyword (or its shortcut) has the same name as a directory/filename
  117. you are trying to list, you must use DIR=filename.  Alternatively,
  118. you can use UNIX like keywords (see the "-unix" option).
  119.  
  120.  
  121. DIR/M,-h=-?=HELP=ABOUT/S,-sh=SH=SHOWHIDDEN/S,-co=CO=CURSORON/S,
  122. -nj=NJ=NOJUMP/S,-nd=ND=NODIRECT/S,-unix/S,-files=FILES/S,
  123. -dirs=DIRS/S,-noda=NODA=NODATES/S,-ex=EX=EXACT/S,-free=FREE/S
  124.  
  125.  
  126. DIR
  127.  
  128. Name of a directory or a file or nothing (will list current dir).
  129. Currently tlist can only process one name (no multiple directories).
  130.  
  131.  
  132. ABOUT, HELP, -?, -h
  133.  
  134. Print version/date information.  In some versions this option may
  135. also display various debugging information.
  136.  
  137. SHOWHIDDEN, SH, -sh
  138.  
  139. Show hidden files/directories (h protection bit).
  140.  
  141.  
  142. CURSORON, CO, -co
  143.  
  144. Keep the cursor on at all times.  Tlist turns the cursor off while
  145. printing something.  If you are using tlist over a comm link
  146. (eg. AUX:, parnet, sernet, etc.), your terminal may not be able
  147. to interpret cursor on/off commands, hence this option.
  148.  
  149.  
  150. NOJUMP, NJ, -nj
  151.  
  152. Do not cache filenames - print out filnames as soon as they are read
  153. from the disk.  This can be used if you have a slow drive and are
  154. listing patterns.  Normally tlist caches 3 names before printing
  155. them.
  156.  
  157.  
  158. NODIRECT, ND, -nd
  159.  
  160. Use normal printing methods instead of direct writes.  Direct writes
  161. may conflict with some console-handlers (eg. KingCON with Jump Scroll
  162. enabled) or communication links (eg. AUX:, parnet, sernet, etc.)
  163.  
  164.  
  165. -unix
  166.  
  167. Use options _only_ which start with "-".  Useful when a option has the
  168. same name as a dir/file, or you prefer UNIX type keywords.  Only works
  169. properly when it is specified as part of the command line.
  170.  
  171. (note:  even if you do not specify -unix, options starting with "-"
  172. still work. )
  173.  
  174. example, to list a filename called "free":
  175. (FREE is a valid keyword in tlist)
  176.  
  177. shell> tlist -unix free
  178. free                            5.1K 18:26:44  ----rwed
  179.  
  180.  
  181. FILES, -files
  182.  
  183. List only files
  184.  
  185.  
  186. DIRS, -dirs
  187.  
  188. List only directories
  189.  
  190.  
  191. NODATES, NODA, -noda
  192.  
  193. Do not print date/time of files/dirs.
  194.  
  195.  
  196. EXACT, EX, -ex
  197.  
  198. Print out the exact size of files.  Long filenames will stuffup
  199. the display.
  200.  
  201.  
  202. FREE, -free
  203.  
  204. Display the amount of used and free space only
  205.  
  206. example:
  207.  
  208. shell> tlist free dh0:
  209. [7.1M used, 917K free]
  210.  
  211. "dh0:" can be replaced with any filename/directory/device or even
  212. omitted.  If it's omitted, tlist will use the current directory as the
  213. argument.
  214.  
  215.  
  216. ALIASING
  217. ~~~~~~~~
  218. You can alias tlist to have a default behaviour which you want.
  219. It has to be aliased for every shell window you open (can be part of
  220. s:shell-startup)
  221.  
  222. Example1:
  223. shell> alias tlist tlist showhidden exact
  224.  
  225. ... and whenever tlist is used, the showhidden and exact options
  226. will be on.
  227.  
  228. Example2:
  229. shell> alias tlist tlist -unix
  230.  
  231. ... and whenever tlist is used, only options which start with "-"
  232. will be used.
  233.  
  234. In later versions, tlist will use environment variables so aliasing
  235. will not be necessary.
  236.  
  237.  
  238. HISTORY
  239. ~~~~~~~
  240. 0.01    tested the theory that print buffering and no cursor would
  241.     speed up directory listing
  242.  
  243. 0.02    added protection bits
  244. 0.03    replaced many occurences of mysprintf() with strcat()/strcpy()
  245.     added filestats
  246.  
  247. 0.04    added dates
  248. 0.05    implemented patterns (#?.sfsf#? etc)
  249.  
  250. 0.06    major code update (read: optimized the crap out of it)
  251.  
  252.     - replaced many occurances of strcat()/strcpy() with
  253.       mystrcpy()/mystrcat() which are much faster...  tlist
  254.       now accesses memory much less
  255.  
  256.     - replaced most occurances of mysprintf() (and hence RawDoFmt())
  257.       with mystrcat()/mystrcpy()/mystrputchar()/ultoa()
  258.  
  259.     - due to above changes, tlist now is ~8% faster than last version
  260.  
  261.     added FREE keyword
  262.     
  263.     rearranged filestats(), added total size of files and total space
  264.     used by files
  265.  
  266.     added CPU check for 68020+ version
  267.     68000 version uses utility.library for 32 bit maths
  268.  
  269.  
  270. TO DO
  271. ~~~~~
  272. show/don't show .info files (hidden by default, SHOWINFO)
  273. option for bytes (b) or nothing at the end of file size
  274. show files/dirs since/upto according to specified date
  275. show files/dirs bigger/smaller according to specified size
  276. multiple directories
  277. recursive directories
  278.